package com.ruoyi.littleRedBook.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.littleRedBook.domain.pojo.Order;
import com.ruoyi.littleRedBook.domain.pojo.Review;

import java.util.List;

public interface OrderService extends IService<Order> {
    // 生成订单
    AjaxResult createOrder(Order order);

    // 买家视角：按状态获取订单列表（0待付款/2待收货）
    AjaxResult getOrdersByStatus(Integer status, Integer pageNum, Integer pageSize);

    // 卖家视角：按状态获取订单列表（1待发货）
    AjaxResult getSellerOrdersByStatus(Integer status, Integer pageNum, Integer pageSize);

    // 确认收货
    AjaxResult confirmReceive(Long orderId);

    // 取消订单
    AjaxResult cancelOrder(Long orderId, String cancelReason);

    // 获取订单详情
    AjaxResult getOrderDetail(Long orderId);

    // 订单评价
    AjaxResult addOrderReview(Review review);

    // 获取订单评价
    AjaxResult getOrderReview(Long orderId);
}
